package edu.hawaii.duedates.user;

/**
 * This interface is implemented for all users. It defines accessor, mutator, attribute, and 
 * toString behaviors.
 * 
 * @author Ronn Reeves and Robin E. Raqueno
 */
public interface IUser {

  /**
   * Sets this user's ID.
   *
   * @param userID The user id.
   */
  public void setUserID(String userID);
  /**
   * Returns this user's id.
   * 
   * @return String The user id.
   */
  public String getUserID();
  

  /**
   * Sets this user's password.
   *
   * @param password The user's password.
   */
  public void setPassword(String password);
  /**
   * Returns this user's password.
   * 
   * @return String The user's password.
   */
  public String getPassword();

  
  /**
   * Sets the validity of this user.
   * 
   * @param validity  The validity status of this user.
   */
  public void setValid(boolean validity);
  /**
   * Returns true if the user is valid.
   *
   * @return Boolean The validity of the user.
   */
  public boolean isValid();

  
  /**
   * Returns the user id.
   *
   * @return String The user id.
   */
  public String toString();
}